﻿#pragma once
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>


typedef int SLDataTYPE;
//动态顺序表
typedef struct SeqList
{
	SLDataTYPE* arr;
	int size;	//有效数据个数
	int capacity;	//容量大小

}SL;

//可打印数组内容/顺序表
void SLPrint(SL* ps);

//声明，初始化
void SLInit(SL* ps);

//动态空间申请扩容
void SLCheckCapacity(SL* ps);

//销毁动态空间的扩容声明
void SLDestroy(SL* ps);

//尾插声明
void SLPushBack(SL* ps, SLDataTYPE x);

//头插声明
void SLPushPront(SL* ps, SLDataTYPE x);

//尾删声明
void SLPopBack(SL* ps);

//头删声明
void SLPopPront(SL* ps);

//查找指定位置的数据声明
int SLFind(SL* ps, SLDataTYPE x);

//指定位置之前插⼊数据声明
void SLInsert(SL * ps, int pos, SLDataTYPE x);

//指定位置之前删除数据声明
void SLErase(SL* ps, int pos);